Изучить основы программирования в оболочке ОС UNIX. Научится писать
более сложные командные файлы с использованием логических управляющих
конструкций и циклов.
Задачи
Используя команды getopts grep, написать командный файл, который
анализирует командную строку с ключами: – -iinputfile — прочитать данные
из указанного файла; – -ooutputfile — вывести данные в указанный файл; –
-pшаблон — указать шаблон для поиска; – -C — различать большие и малые
буквы; – -n — выдавать номера строк. а затем ищет в указанном файле
нужные строки, определяемые ключом -p.
Задачи
Написать на языке Си программу, которая вводит число и определяет,
является ли оно больше нуля, меньше нуля или равно нулю. Затем программа
завершается с помощью функции exit(n), передавая информацию в о коде
завершения в оболочку. Команд- ный файл должен вызывать эту программу и,
проанализировав с помощью команды $?, выдать сообщение о том, какое
число было введено.
Задачи
Написать командный файл, создающий указанное число файлов,
пронумерованных последовательно от 1 до 𝑁 (например 1.tmp, 2.tmp,
3.tmp,4.tmp и т.д.). Число файлов, которые необходимо создать,
передаётся в аргументы командной строки. Этот же ко- мандный файл должен
уметь удалять все созданные им файлы (если они существуют).
Задачи
Написать командный файл, который с помощью команды tar запаковывает
в архив все файлы в указанной директории. Модифицировать его так, чтобы
запаковывались только те файлы, которые были изменены менее недели тому
назад (использовать команду find).
Первое задание
Создадим файл для первого задания
создание файла
Промежуточный результат
Введем в него код для первого задания
код
Промежуточный результат
Создадим файл в который будем вводить текст, с которым будет работать
программа
создание файла
Промежуточный результат
Текст для работы программы
код
Промежуточный результат
Вывод найденного текста по установленному шаблону в командную
строку
вывод результата
Промежуточный результат
Выведем найденный текст в отдельный файл
вывод резултьтата
Промежуточный результат
Выведенный текст в отдельном файле
вывод резултьтата
Промежуточный результат
Отредактируем текст для работы программы
вывод резултьтата
Промежуточный результат
Выведем текст в файл с учетом регистра
вывод резултьтата
Промежуточный результат
Вывод текста с учетом регистра( видно, что вывело только с маленькой
буквы, а заглавную не тронуло)
вывод резултьтата
Промежуточный результат
Выведем текст с учетом регистра и нумерацией строк, из которых было
взято слово
вывод резултьтата
Промежуточный результат
Вывод текста с нумерацией
вывод резултьтата
Второе задание
Создадим файл для второго задания и выдадим права на выполнение
создание файла
Промежуточный результат
Вставим код программы, который ответственнен за определение числа
код программы
Промежуточный результат
Создадим файл для второго задания, который будет “общаться с
пользователем”
создание файла
Промежуточный результат
Вставим в него код программы
код программы
Промежуточный результат
Скомпилируем наш код на языке Си и проверим работоспособность
вывод резултьтата
Третье задание
Создадим файл для третьего задания и выдадим ему права на
выполнение
создание файла
Промежуточный результат
Вставим в него необходимый код для выполнения задания
код программы
Промежуточный результат
Работоспособность кода
вывод резултьтата
Промежуточный результат
Работоспособность кода в обратную сторону
вывод резултьтата
Четвертое задание
Создадим файл для четвертого задания и выдадим ему права на
выполнение
создание файла
Промежуточный результат
Вставим в него необходимый код программы
код программы
Промежуточный результат
Работоспособность кода
вывод резултьтата
Промежуточный результат
Созданные 2 архива: всей папки и только файлов, которые были изменены
менее чем неделю назад
вывод резултьтата
Выводы
Мы получили новые и отработали у##е имеющиеся навыки программирования
в оболочке OC Linux.